broadway: Fix assert failure
authorAlexander Larsson <alexl@redhat.com>
Mon, 18 Mar 2013 15:37:25 +0000 (16:37 +0100)
committerAlexander Larsson <alexl@redhat.com>
Mon, 18 Mar 2013 15:41:05 +0000 (16:41 +0100)
Requests are not limited in size by BroadwayRequest, as
BroadwayRequestTranslation can be of variable size. No need
to copy the request anymore though, because requests are aligned
now.

gdk/broadway/broadwayd.c

index 9a273c7f563611a3e5aed62d4bbbd24990b60c8f..1c06eb7613904d2f1b3cc77ef0c049fe0dcc1be4 100644 (file)
@@ -409,7 +409,6 @@ client_fill_cb (GObject *source_object,
       guint32 size;
       gsize count, remaining;
       guint8 *buffer;
-      BroadwayRequest request;
 
       buffer = (guint8 *)g_buffered_input_stream_peek_buffer (client->in, &count);
 
@@ -417,14 +416,10 @@ client_fill_cb (GObject *source_object,
       while (remaining >= sizeof (guint32))
        {
          memcpy (&size, buffer, sizeof (guint32));
-         
+
          if (size <= remaining)
            {
-             g_assert (size >= sizeof (BroadwayRequestBase));
-             g_assert (size <= sizeof (BroadwayRequest));
-
-             memcpy (&request, buffer, size);
-             client_handle_request (client, &request);
+             client_handle_request (client, (BroadwayRequest *)buffer);
 
              remaining -= size;
              buffer += size;